/**
 *Copyright (c) 2024 watereyes
 * safetymanagement is licensed under Mulan PubL v2.
 * You can use this software according to the terms and conditions of the Mulan
 * PubL v2.
 * You may obtain a copy of Mulan PubL v2 at:
 *          http://license.coscl.org.cn/MulanPubL-2.0
 * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
 * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
 * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
 * See the Mulan PubL v2 for more details.
 */
package com.koron.accident.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.koron.common.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

@ApiModel(value = "工伤管理实体类",description = "工伤管理实体类")
public class InjuriesRegister extends BaseEntity {

    @ApiModelProperty(name = "corpCode",value = "水司code")
    private String corpCode;

    @ApiModelProperty(name = "corpName",value = "水司名称")
    private String corpName;

    @ApiModelProperty(name = "staffCode",value = "人员code")
    private String staffCode;

    @ApiModelProperty(name = "staffName",value = "人员名称")
    private String staffName;

    @ApiModelProperty(name = "departmentCode",value = "人员所在单位code")
    private String departmentCode;

    @ApiModelProperty(name = "departmentName",value = "人员所在单位名称")
    private String departmentName;

    @ApiModelProperty(name = "accidentBulletinId",value = "事故快报id")
    private String accidentBulletinId;

    @ApiModelProperty(name = "accidentBulletinName",value = "事故快报名称")
    private String accidentBulletinName;

    @ApiModelProperty(name = "injuredPart",value = "受伤部位")
    private String injuredPart;

    @ApiModelProperty(name = "injuredLevel",value = "严重程度，0轻微，1严重，3致命")
    private Integer injuredLevel;

    @ApiModelProperty(name = "sex",value = "性别")
    private  String sex;

    @ApiModelProperty(name = "birthday",value = "出生日期")
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date birthday;

    @ApiModelProperty(name = "staffPhone",value = "个人联系电话")
    private String staffPhone;

    @ApiModelProperty(name = "staffSocialInsuranceNum",value = "个人参保号")
    private String staffSocialInsuranceNum;

    @ApiModelProperty(name = "departmentPhone",value = "单位联系电话")
    private String departmentPhone;

    @ApiModelProperty(name = "deptSocialInsuranceNum",value = "单位参保编号")
    private String deptSocialInsuranceNum;

    @ApiModelProperty(name = "workTime",value = "参加工作时间")
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date workTime;

    @ApiModelProperty(name = "diagnosticTime",value = "诊断时间")
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date diagnosticTime;
    private String diagnosticTimeStr;

    @ApiModelProperty(name = "occupationalDiseases",value = "职业病名称")
    private String occupationalDiseases;

    @ApiModelProperty(name = "beginTime",value = "接触职业病开始时间")
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date beginTime;

    @ApiModelProperty(name = "endTime",value = "接触职业病结束时间")
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date endTime;

    @ApiModelProperty(name = "visitingTimes",value = "探望人次")
    private Integer visitingTimes;

    @ApiModelProperty(name = "chaperone",value = "陪护人")
    private String chaperone;

    @ApiModelProperty(name = "chaperoneDay",value = "陪护人天")
    private Integer chaperoneDay;

    @ApiModelProperty(name = "isContact",value = "是否接触职业病，0否，1是")
    private Integer isContact;

    @ApiModelProperty(name = "chaperoneSituation",value = "陪护情况")
    private String chaperoneSituation;

    @ApiModelProperty(name = "directCost",value = "直接费用")
    private BigDecimal directCost;

    @ApiModelProperty(name = "indirectCost",value = "间接费用")
    private BigDecimal indirectCost;

    @ApiModelProperty(name = "otherCost",value = "其他费用")
    private BigDecimal otherCost;

    @ApiModelProperty(name = "injureContent",value = "受伤经过")
    private String injureContent;

    @ApiModelProperty(name = "attachment",value = "附件")
    private String attachment;

    @ApiModelProperty(name = "previewAttachment",value = "pdf附件")
    private String previewAttachment;

    public String getCorpCode() {
        return corpCode;
    }

    public void setCorpCode(String corpCode) {
        this.corpCode = corpCode;
    }

    public String getCorpName() {
        return corpName;
    }

    public void setCorpName(String corpName) {
        this.corpName = corpName;
    }

    public String getStaffCode() {
        return staffCode;
    }

    public void setStaffCode(String staffCode) {
        this.staffCode = staffCode;
    }

    public String getStaffName() {
        return staffName;
    }

    public void setStaffName(String staffName) {
        this.staffName = staffName;
    }

    public String getDepartmentCode() {
        return departmentCode;
    }

    public void setDepartmentCode(String departmentCode) {
        this.departmentCode = departmentCode;
    }

    public String getDepartmentName() {
        return departmentName;
    }

    public void setDepartmentName(String departmentName) {
        this.departmentName = departmentName;
    }

    public String getAccidentBulletinId() {
        return accidentBulletinId;
    }

    public void setAccidentBulletinId(String accidentBulletinId) {
        this.accidentBulletinId = accidentBulletinId;
    }

    public String getAccidentBulletinName() {
        return accidentBulletinName;
    }

    public void setAccidentBulletinName(String accidentBulletinName) {
        this.accidentBulletinName = accidentBulletinName;
    }

    public String getInjuredPart() {
        return injuredPart;
    }

    public void setInjuredPart(String injuredPart) {
        this.injuredPart = injuredPart;
    }

    public Integer getInjuredLevel() {
        return injuredLevel;
    }

    public void setInjuredLevel(Integer injuredLevel) {
        this.injuredLevel = injuredLevel;
    }

    public Date getBirthday() {
        return birthday;
    }

    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }

    public String getStaffPhone() {
        return staffPhone;
    }

    public void setStaffPhone(String staffPhone) {
        this.staffPhone = staffPhone;
    }

    public String getStaffSocialInsuranceNum() {
        return staffSocialInsuranceNum;
    }

    public void setStaffSocialInsuranceNum(String staffSocialInsuranceNum) {
        this.staffSocialInsuranceNum = staffSocialInsuranceNum;
    }

    public String getDepartmentPhone() {
        return departmentPhone;
    }

    public void setDepartmentPhone(String departmentPhone) {
        this.departmentPhone = departmentPhone;
    }

    public String getDeptSocialInsuranceNum() {
        return deptSocialInsuranceNum;
    }

    public void setDeptSocialInsuranceNum(String deptSocialInsuranceNum) {
        this.deptSocialInsuranceNum = deptSocialInsuranceNum;
    }

    public Date getWorkTime() {
        return workTime;
    }

    public void setWorkTime(Date workTime) {
        this.workTime = workTime;
    }

    public Date getDiagnosticTime() {
        return diagnosticTime;
    }

    public void setDiagnosticTime(Date diagnosticTime) {
        this.diagnosticTime = diagnosticTime;
    }

    public String getOccupationalDiseases() {
        return occupationalDiseases;
    }

    public void setOccupationalDiseases(String occupationalDiseases) {
        this.occupationalDiseases = occupationalDiseases;
    }

    public Date getBeginTime() {
        return beginTime;
    }

    public void setBeginTime(Date beginTime) {
        this.beginTime = beginTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public Integer getVisitingTimes() {
        return visitingTimes;
    }

    public void setVisitingTimes(Integer visitingTimes) {
        this.visitingTimes = visitingTimes;
    }

    public String getChaperone() {
        return chaperone;
    }

    public void setChaperone(String chaperone) {
        this.chaperone = chaperone;
    }

    public Integer getChaperoneDay() {
        return chaperoneDay;
    }

    public void setChaperoneDay(Integer chaperoneDay) {
        this.chaperoneDay = chaperoneDay;
    }

    public Integer getIsContact() {
        return isContact;
    }

    public void setIsContact(Integer isContact) {
        this.isContact = isContact;
    }

    public String getChaperoneSituation() {
        return chaperoneSituation;
    }

    public void setChaperoneSituation(String chaperoneSituation) {
        this.chaperoneSituation = chaperoneSituation;
    }

    public BigDecimal getDirectCost() {
        return directCost;
    }

    public void setDirectCost(BigDecimal directCost) {
        this.directCost = directCost;
    }

    public BigDecimal getIndirectCost() {
        return indirectCost;
    }

    public void setIndirectCost(BigDecimal indirectCost) {
        this.indirectCost = indirectCost;
    }

    public BigDecimal getOtherCost() {
        return otherCost;
    }

    public void setOtherCost(BigDecimal otherCost) {
        this.otherCost = otherCost;
    }

    public String getInjureContent() {
        return injureContent;
    }

    public void setInjureContent(String injureContent) {
        this.injureContent = injureContent;
    }

    public String getAttachment() {
        return attachment;
    }

    public void setAttachment(String attachment) {
        this.attachment = attachment;
    }

    public String getPreviewAttachment() {
        return previewAttachment;
    }

    public void setPreviewAttachment(String previewAttachment) {
        this.previewAttachment = previewAttachment;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getDiagnosticTimeStr() {
        return diagnosticTimeStr;
    }

    public void setDiagnosticTimeStr(String diagnosticTimeStr) {
        this.diagnosticTimeStr = diagnosticTimeStr;
    }

    @Override
    public String toString() {
        return "InjuriesRegister{" +
                "corpCode='" + corpCode + '\'' +
                ", corpName='" + corpName + '\'' +
                ", staffCode='" + staffCode + '\'' +
                ", staffName='" + staffName + '\'' +
                ", departmentCode='" + departmentCode + '\'' +
                ", departmentName='" + departmentName + '\'' +
                ", accidentBulletinId='" + accidentBulletinId + '\'' +
                ", accidentBulletinName='" + accidentBulletinName + '\'' +
                ", injuredPart='" + injuredPart + '\'' +
                ", injuredLevel=" + injuredLevel +
                ", sex='" + sex + '\'' +
                ", birthday=" + birthday +
                ", staffPhone='" + staffPhone + '\'' +
                ", staffSocialInsuranceNum='" + staffSocialInsuranceNum + '\'' +
                ", departmentPhone='" + departmentPhone + '\'' +
                ", deptSocialInsuranceNum='" + deptSocialInsuranceNum + '\'' +
                ", workTime=" + workTime +
                ", diagnosticTime=" + diagnosticTime +
                ", occupationalDiseases='" + occupationalDiseases + '\'' +
                ", beginTime=" + beginTime +
                ", endTime=" + endTime +
                ", visitingTimes=" + visitingTimes +
                ", chaperone='" + chaperone + '\'' +
                ", chaperoneDay=" + chaperoneDay +
                ", isContact=" + isContact +
                ", chaperoneSituation='" + chaperoneSituation + '\'' +
                ", directCost=" + directCost +
                ", indirectCost=" + indirectCost +
                ", otherCost=" + otherCost +
                ", injureContent='" + injureContent + '\'' +
                ", attachment='" + attachment + '\'' +
                '}';
    }
}
